package com.woniuxy.dao;
/*
 * @author 幸琦林
 *
 */

import com.woniuxy.entity.CoachInfo;
import com.woniuxy.entity.SysAuthority;
import com.woniuxy.entity.User;
import com.woniuxy.entity.Wallet;

import java.util.List;

import org.apache.ibatis.annotations.Param;



public interface SimpleUserDao {
    /**
     * 登录方法
     *
     * @param account:传入账号信息，可以是手机账号邮箱;
     * @return 返回用户;
     */
    User loginUser(@Param("account") String account);

    /**
     * @param user:普通用户注册方法
     */
    int registerUser(User user);

    //查询指定范围内的指定角色用户
    List<User> getUsersInDefinedDistance(User user);

    /**
     * @param userId:传入用户id查找用户
     */
    User findUserById(int userId);

    /**
     * @param role:用户角色
     */
    List<User> findUserByRole(int role);


    /**
     * @param roleId:通过角色ID查询用户的所有权限
     */
    List<SysAuthority> findUserPerms(Long roleId);


    /**
     * @param account:判断是否已注册
     */
    int userExist(String account);

    /**
     * @param phone:手机号是否已存在
     */
    int phoneExists(String phone);

	Wallet getMyWallet(long id);

	void updatePwd(long id, String pwd);

	void setRole(long id, String role);

	void addToUserRole(long id, String role);

	void addCoachInfo(CoachInfo cf);

	CoachInfo selectCoachInfoByuserId(long id);

	void deleteCoachInfo(long id);
    
}
